1. Field of the Invention
The present invention relates to host apparatus, such as host apparatus into which a memory card may be inserted.
2. Description of the Related Art
Presently, a memory card is used which utilizes a nonvolatile semiconductor memory such as a flash memory as a medium for recording music data and video data. A typical example of the flash memory used in the memory card is a NAND-type flash memory.
The NAND-type flash memory has the following characteristics: (1) data is written in page units; (2) data is erased in units referred to as blocks each of which includes pages. Therefore, when data is to be updated in a page included in a block which has a data-written page, the following process referred to as “data-move accompanying write (collateral data copy)” needs to be performed. Data-move accompanying write involves writing to-be-written data (new data) into a new block having no written data and copying the remaining data, which is in the old block containing the old data (data to be updated into the new data) and not to be updated, into the new block. Therefore, it sometimes takes considerable time to write one page. Note that if data is sequentially written into consecutive pages starting from a top page of a block, data-move accompanying write does not occur, thus enabling efficient data writing.
A file allocation table (FAT) file system is presently used as for a memory card. The FAT file system involves reading and writing of data in data units referred to as clusters, so that to which cluster each of data item is assigned is managed by using a table referred to as an FAT. In the FAT file system, FAT and cluster data are written and updated at random.
Therefore, generally, data-move accompanying write frequently occurs in a memory card that employs both a NAND-type flash memory and an FAT file system. As a result, file writing and rewriting is sometimes slow.
A file system of host apparatus that utilizes such a memory card is currently not provided with an application program interface (API) that takes into account the above-described characteristics. This has proved a problem in particular for an application that handles AV data for which a data writing speed not less than a certain level is demanded.